home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / glass / glass.lha / GLASS / libcvr / flagset.c < prev    next >
C/C++ Source or Header  |  1990-11-09  |  532b  |  28 lines

  1. /* file: flagset.c */
  2.  
  3. #include "all.h"
  4. #include "cvr.h"
  5.  
  6. /* Given a string 's' containing debug flags, a flag table 'flagtab' and
  7.    a value 'val', look up all flags given in 's', and set the associated
  8.    value to 'val'.
  9.  */
  10. void setdbflags( s, flagtab, val )
  11.  char *s;
  12.  dbflag *flagtab;
  13.  int val;
  14. {
  15.     register int c;
  16.     dbflag *e;
  17.  
  18.     while( *s != '\0' ){
  19.     c = *s++;
  20.     e = finddbflag( c, flagtab );
  21.     if( e == dbflagNIL ){
  22.         fprintf( stderr, "Unknown debug flag: '%c'\n", c );
  23.         exit( 1 );
  24.     }
  25.     *e->flagadr = val;
  26.     }
  27. }
  28.